package com.jszc.lottery.common.datatest;

import java.util.UUID;

/**
 * 最基本小功能功能
 */
public class CommonUtil {
    /**
     * 模仿dotnet里的as 对象转化语法
     * 如果转化错误 返回null
     */
    public static  <T> T as(Object obj, Class<T> classOfT){
        if(obj == null){
            return null;
        }
        return ReflectionUtil.inheritFrom(obj.getClass(),classOfT) ? (T) obj : null;
    }

    /**
     * 替换原有的equals  考虑 null的问题
     */
    public static <T1,T2> boolean equals(T1 obj1,T2 obj2){
        if(obj1 == null && obj2 == null){
            return true;
        }
        if(obj1 != null){
            return obj1.equals(obj2);
        }
        return false;
    }


    /**
     * 获得新的guid字符串
     */
    public static String getNewGuidStr(){
        return UUID.randomUUID().toString().toUpperCase();
    }

    /**
     * 全局共有锁对象
     */
    public static  Object OBJLOCK=new Object();
}
